package ywpt.service.config;

import java.util.List;
import org.hibernate.criterion.DetachedCriteria;

import ywpt.model.ProviderInfo;

public interface ProviderService {

	public abstract List< ProviderInfo> getProviderInfos(DetachedCriteria query, int pageSize, int startIndex);

	public abstract ProviderInfo getProviderInfoById(Long id);

	public int getProviderInfoCountByCriteria(DetachedCriteria query);

	public abstract String createProviderCode();

	public abstract void saveProviderInfo(ProviderInfo providerInfo);

	public abstract void updateProviderInfo(ProviderInfo providerInfo);

	public abstract void removeProviderInfo(Long id);
	
	public abstract List<ProviderInfo> getProviderInfos(); 
	
	public abstract List<ProviderInfo> getProvidersByProviderName(String providerName, int start, int size);
	
	public abstract int getProvidersCountByName(String providerName);
	
	public abstract String getProviderInformationById(Long id);
}
